package org.bf.sms.persistent.iface.login;

import java.sql.SQLException;
import java.util.List;
import java.util.Map;

import org.bf.sms.domain.user.Account;

/**
 * 帐号DAO
 * 
 * @author LiuChang
 * @version 1.0 2010-12-06
 * @since 1.0
 */
public interface DaoAccount
{

	/**
	 * 根据账户名获取一个帐号
	 * 
	 * @param username
	 * @return com.jinye.sms.domain.Account 帐号信息
	 */
	public Account query(String username) throws SQLException;

	/**
	 * 获取所有帐号信息
	 * 
	 * @return java.util.List<Account> 帐号列表
	 */
	public List<Account> query() throws SQLException;

	/**
	 * 模糊查询帐号信息
	 * 
	 * @return java.util.List<Account> 帐号列表
	 */
	public List<Account> query(Map<String, Object> map) throws SQLException;

	/**
	 * 根据帐号和密码获取一个帐号信息
	 * 
	 * @param username
	 *            用户名
	 * @param password
	 *            密码
	 * @return com.jinye.sms.domain.Account 帐号信息
	 */
	public Account query(String username, String password) throws SQLException;

	/**
	 * 新增帐号
	 * 
	 * @param account
	 *            帐号信息
	 */
	public void insert(Account account) throws SQLException;

	/**
	 * 更新帐号信息
	 * 
	 * @param account
	 *            帐号信息
	 */
	public void update(Account account) throws SQLException;

}
